const path = require('path') // 引入node的path模块

// const resolve = dir => path.join(__dirname, dir)

// 这是个函数在chainWebpack配置里调用 上面是下面的简写
// const resolve = (dir) => {
//   return path.join(__dirname, dir)
// }

const BASE_URL = process.env.NODE_ENV === 'procution' ? '/vue-admin/' : '/'
// 判断是在开发环境还是生产环境，如果当前是打包后的生产环境（procution）下，‘/’是域名的根目录下，‘/vue-admin’是vue-admin目录下，如果是开发环境的话直接‘/’即可

module.exports = {
  lintOnSave: false, // 取消代码检查
  // baseUrl: BASE_URL, // 项目的基本路径 3.3后已弃用请用publicPath
  publicPath: BASE_URL, // 项目的基本路径
  outputDir: 'dist', // 编译打包后的输出目录
  productionSourceMap: false, // 打包时不生成.map文件，会减少打包后的体积
  configureWebpack: { // 路径重命名
    resolve: {
      extensions: ['.js', '.json', '.vue', '.scss', '.css'],
      alias: {
        '@': path.join(__dirname, 'src'), // ./src
        '~A': path.join(__dirname, 'src/assets'), // ./src/assets
        '~C': path.join(__dirname, 'src/components'), // ./src/components
        '~V': path.join(__dirname, 'src/views') // ./src/views
      }
    }
  },
  // chainWebpack: config => { // 功能同上
  //   config.resolve.alias
  //     .set('@', resolve('src'))
  //     .set('_c', resolve('src/components'))
  // },
  devServer: { // 本地服务
    clientLogLevel: 'info',
    contentBase: path.join(__dirname, 'dist'),
    compress: true,
    index: 'index.html',
    host: '0.0.0.0',
    port: 4000,
    hot: true,
    open: true,
    // 代理配置
    proxy: {
      '/pc': {
        target: 'http://39.100.45.143:8091/dj',
        changeOrigin: true
      }
    }
  }
}
